Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

146
Views
¿Es `if (idx < arr.length)` equivalente a `if (arr[idx])`?

Suponiendo que todos los elementos dentro de una matriz tienen un valor diferente de undefined , null o 0 , es

if (idx < arr.length) equivalente a if (arr[idx]) ?

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

No.

Hay otros valores falsos que se evaluarán como false en la instrucción if , como una cadena vacía ( '' ):

 const arrWithEmptyString = ['', '', '']; const idx = 2; console.log(!!(idx < arrWithEmptyString.length)); console.log(!!arrWithEmptyString[idx]);

Alternativamente, ¿qué sucede si la matriz contiene un valor booleano false ?

 const boolArray = [true, false, true, false] const idx = 3; console.log(!!(idx < boolArray.length)); console.log(!!boolArray[idx]);

La conversión de tipo /coerción de tipo en JS puede ser confusa e impredecible; en mi opinión, generalmente es mejor ser explícito y probar exactamente lo que quiere probar, en lugar de confiar en comparaciones de tipos débiles para guardar algunos caracteres.

about 4 years ago · Juan Pablo Isaza Report

0

Buena respuesta de Alexander Nied, también NaN se evalúa como falso

 const boolArray = [NaN, NaN, NaN, NaN] const idx = 3; console.log(!!(idx < boolArray.length)); console.log(!!boolArray[idx]);
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!